home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / boxlazer.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1984-04-24  |  2.8 KB  |  114 lines

  1. 10  GOTO 1030
  2. 20  RANDOMIZE VAL(RIGHT$(TIME$,2))
  3. 30  REM BOXFIRE GAME 'uploaded to CPCUG SOFTSIG 7-3-83 BOXFIRE.BAS
  4. 40  REM WRITTEN BY BRAD AND BRIAN SACHAR
  5. 50  REM PHONE 871-8737
  6. 55  REM UPDATED FOR 80 COLUMN BY RICH BONAHUE 7-16-83 AS BXFIRE80.BAS
  7. 60  DEF SEG=&H40:POKE &H17,&H20
  8. 70  CLEAR:RE=100
  9. 80  COLOR 7:CLS
  10. 90  WIDTH 80
  11. 100  KEY OFF
  12. 110  SCREEN 0:LOCATE 1,1,0
  13. 120  FOR I=1 TO 80:LOCATE 1,I:PRINT CHR$(219);:NEXT
  14. 130  FOR I=1 TO 23:LOCATE I,80:PRINT CHR$(219);:NEXT
  15. 140  FOR I=1 TO 80:LOCATE 23,I:PRINT CHR$(219);:NEXT
  16. 150  FOR I=1 TO 23:LOCATE I,1:PRINT CHR$(219);:NEXT
  17. 160  LOCATE 10,38:PRINT CHR$(218)+CHR$(196)+CHR$(223)+CHR$(223)+CHR$(196)+CHR$(191);
  18. 170  LOCATE 11,38:PRINT CHR$(221)+"    "+CHR$(222);
  19. 180  LOCATE 12,38:PRINT CHR$(192)+CHR$(196)+CHR$(220)++CHR$(220)+CHR$(196)+CHR$(217);
  20. 190  A$=CHR$(24):B$=CHR$(25):C$=CHR$(27):D$=CHR$(26):S$="*":M=2:M1=1
  21. 200  Y$=INKEY$:GSW=GSW+1:IF GSW/4=INT(GSW/4) THEN RE=RE-2:IF RE=<-1 THEN M=M+2:M1=M1+1:RE=40
  22. 210  LOCATE 3,50:PRINT "SCORE = ";SC;
  23. 220  FOR KL=1 TO RE:NEXT KL:LOCATE 1,56
  24. 230  IF Y$="8" THEN SOUND 500,0.1:GOTO 280
  25. 240  IF Y$="2" THEN SOUND 600,0.1:GOTO 370
  26. 250  IF Y$="4" THEN SOUND 700,0.1:GOTO 460
  27. 260  IF Y$="6" THEN SOUND 800,0.1:GOTO 550
  28. 270  GOTO 650
  29. 280  FOR I=9 TO 2 STEP -1
  30. 290  IF P=1 AND I<=L THEN P=0:L=0:Y=0:SC=SC+1:X=INT(RND*4)+1:GOTO 330
  31. 300  LOCATE I,41:PRINT A$;
  32. 310  SQW=1:Y=1:GOSUB 650
  33. 320  NEXT
  34. 330  FOR I=9 TO 2 STEP -1
  35. 340  LOCATE I,41:PRINT " ";
  36. 350  NEXT
  37. 360  GOTO 650
  38. 370  FOR I=13 TO 22
  39. 380  IF P=2 AND I>=L THEN P=0:SC=SC+1:L=0:Y=0:X=INT(RND*4)+1:GOTO 420
  40. 390  LOCATE I,41:PRINT B$;
  41. 400  SQW=1:Y=2:GOSUB 650
  42. 410  NEXT
  43. 420  FOR I=13 TO 22
  44. 430  LOCATE I,41:PRINT " ";
  45. 440  NEXT
  46. 450  GOTO 650
  47. 460  FOR I=37 TO 2 STEP -1
  48. 470  IF P=3 AND I<=L THEN P=0:SC=SC+1:L=0:Y=0:X=INT(RND*4)+1:GOTO 510
  49. 480  LOCATE 11,I:PRINT C$;
  50. 490  SQW=1:Y=3:GOSUB 650
  51. 500  NEXT
  52. 510  FOR I=37 TO 2 STEP -1
  53. 520  LOCATE 11,I:PRINT " ";
  54. 530  NEXT
  55. 540  GOTO 650
  56. 550  FOR I=44 TO 79
  57. 560  IF P=4 AND I>=L THEN P=0:L=0:SC=SC+1:Y=0:X=INT(RND*4)+1:GOTO 600
  58. 570  LOCATE 11,I:PRINT D$;
  59. 580  SQW=1:Y=4:GOSUB 650
  60. 590  NEXT
  61. 600  FOR I=44 TO 79
  62. 610  LOCATE 11,I:PRINT" ";
  63. 620  NEXT
  64. 630  GOTO 650
  65. 640  REM SECOND LOOP ***************
  66. 650  ON X GOTO 660,720,780,840
  67. 660  IF L=0 THEN L=M1'UP BADGUY
  68. 670  L=L+1:P=1
  69. 680  IF L>9 THEN 900
  70. 690  LOCATE L,41:PRINT S$;
  71. 700  IF Y=1 THEN SQW=0:RETURN ELSE IF SQW=1 THEN SQW=0:RETURN 710
  72. 710  GOTO 200
  73. 720  IF L=0 THEN L=24-M1'DOWN BADGUY
  74. 730  L=L-1:P=2
  75. 740  IF L<13 THEN 900
  76. 750  LOCATE L,41:PRINT S$;
  77. 760  IF Y=2 THEN SQW=0:RETURN ELSE IF SQW=1 THEN SQW=0:RETURN 770
  78. 770  GOTO 200
  79. 780  IF L=0 THEN L=M-1'LEFT BADGUY
  80. 790  L=L+2:P=3
  81. 800  IF L>37 THEN 900
  82. 810  LOCATE 11,L:PRINT S$;
  83. 820  IF Y=3 THEN SQW=0:RETURN ELSE IF SQW=1 THEN SQW=0:RETURN 830
  84. 830  GOTO 200
  85. 840  IF L=0 THEN L=79-M'RIGHT BADGUY
  86. 850  L=L-2:P=4
  87. 860  IF L<44 THEN 900
  88. 870  LOCATE 11,L:PRINT S$;
  89. 880  IF Y=4 THEN SQW=0:RETURN ELSE IF SQW=1 THEN SQW=0:RETURN 890
  90. 890  GOTO 200
  91. 900  CLS
  92. 910  WIDTH 80
  93. 920  FOR I=1 TO 50
  94. 930  A=(RND*30)+37
  95. 940  SOUND A,0.01
  96. 950  COLOR 0,7:CLS
  97. 960  COLOR 7:CLS
  98. 970  NEXT
  99. 980  SOUND 40,0
  100. 990  WIDTH 80
  101. 1000  COLOR 7:CLS:LOCATE 11,19:PRINT "SCORE =  ";SC:INPUT "PLAY AGAIN (Y/N)";A$
  102. 1010  IF A$<>"Y" AND A$<>"y" AND A$<>"N" AND A$<>"n" THEN 1000
  103. 1020  IF A$="Y" OR A$="y" THEN GOTO 20 ELSE KEY ON:CHAIN "MENU"
  104. 1030  CLS:PRINT "YOU ARE THE BOX IN THE MIDDLE OF THE SCREEN"
  105. 1040  PRINT "YOU HAVE FOUR LASER GUNS ..... "
  106. 1050  PRINT "THE CURSOR KEYPAD KEYS CONTROL THE GUNS"
  107. 1060  PRINT "`8' FIRES UP"
  108. 1070  PRINT "`2' FIRES DOWN"
  109. 1080  PRINT "`4' FIRES LEFT"
  110. 1090  PRINT "`6' FIRES RIGHT"
  111. 1100  PRINT "ENEMIES WILL TRY TO REACH THE BOX ... YOU MUST STOP THEM!!"
  112. 1110  PRINT "PRESS ANY KEY TO CONTINUE"
  113. 1120  IF INKEY$<>"" THEN GOTO 20 ELSE 1120
  114.